﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ObviousCode.Aspect.PluginLibrary.Event
{
    public class AspectSaveCompletingEventArgs : EventArgs
    {
        public enum SaveMethod { UTF8, Binary }

        public AspectSaveCompletingEventArgs(string saveData)
        {
            SaveData = saveData;
            Method = SaveMethod.UTF8;
            Handled = false;            
        }

        public string SaveData { get; private set; }

        /// <summary>
        /// Allows for file extension of save file to be queried and overridden
        /// 
        /// Unless AspectDesigner.ExtensionString property has been set, will default to .srf
        /// </summary>
        public string Extension { get; set; }
        
        public string ExtensionDescription { get; set; }

        /// <summary>
        /// indicates format that save file shall be written
        /// Defaults to UTF8
        /// </summary>
        public SaveMethod Method { get; set; } 

        /// <summary>
        /// indicates that implementation has handled save, and no further processing is done
        /// 
        /// Defaults to false
        /// </summary>
        public bool Handled { get; set; }
    }
}
